Component org.nuxeo.runtime.datasource
In bundle org.nuxeo.runtime.datasource
Documentation
Component use to register datasources.
Example contribution:
<datasource driverClassName="org.apache.derby.jdbc.EmbeddedDriver"
maxActive="20" maxIdle="5" maxWait="10000" name="jdbc/foo">
<property name="url">jdbc:derby:/home/db;create=true</property>
<property name="username">nuxeo</property>
<property name="password">nuxeo</property>
</datasource>
Or, for a XA datasource:
<datasource maxActive="20" maxIdle="5" maxWait="10000"
name="jdbc/foo" xaDataSource="org.apache.derby.jdbc.EmbeddedXADataSource">
<property name="databaseName">/home/db</property>
<property name="createDatabase">create</property>
<property name="user">nuxeo</property>
<property name="password">nuxeo</property>
</datasource>
The allowed attributes of a datasource
element are:
- name the JNDI name (for instance jdbc/foo )
- driverClassName the JDBC driver class name (only for a non-XA datasource)
- xaDataSource the XA datasource class name (only for a XA datasource)
To configure the characteristics of the pool:
- maxActive the maximum number of active connections
- minIdle the minimum number of idle connections
- maxIdle the maximum number of idle connections
- maxWait the maximum number of milliseconds to wait for a connection to be available, or -1 (the default) to wait indefinitely
- ... see org.apache.commons.dbcp.BasicDataSource setters for more.
To configure the datasource, individual property sub-elements must be used. For a non-XA datasource, url
, username
and password
are commonly used. For a XA datasource, the properties are done according to the JavaBean setters of the datasource, see the documentation for your JDBC driver for more.
Implementation
Class:
org.nuxeo.runtime.datasource.DataSourceComponent
Services
Extension Points
XML Source
<?xml version="1.0"?>
<component name="org.nuxeo.runtime.datasource">
<documentation>
Component use to register datasources.
Example contribution:
<code>
<datasource name="jdbc/foo" driverClassName="org.apache.derby.jdbc.EmbeddedDriver"
maxActive="20" maxIdle="5" maxWait="10000">
<property name="url">jdbc:derby:/home/db;create=true</property>
<property name="username">nuxeo</property>
<property name="password">********</property>
</datasource>
</code>
Or, for a XA datasource:
<code>
<datasource name="jdbc/foo"
xaDataSource="org.apache.derby.jdbc.EmbeddedXADataSource" maxActive="20"
maxIdle="5" maxWait="10000">
<property name="databaseName">/home/db</property>
<property name="createDatabase">create</property>
<property name="user">nuxeo</property>
<property name="password">********</property>
</datasource>
</code>
The allowed attributes of a
<b>datasource</b>
element are:
<ul>
<li>
<b>name</b>
the JNDI name (for instance
<tt>jdbc/foo</tt>
)
</li>
<li>
<b>driverClassName</b>
the JDBC driver class name (only for a non-XA datasource)
</li>
<li>
<b>xaDataSource</b>
the XA datasource class name (only for a XA datasource)
</li>
</ul>
<p />
To configure the characteristics of the pool:
<ul>
<li>
<b>maxActive</b>
the maximum number of active connections
</li>
<li>
<b>minIdle</b>
the minimum number of idle connections
</li>
<li>
<b>maxIdle</b>
the maximum number of idle connections
</li>
<li>
<b>maxWait</b>
the maximum number of milliseconds to wait for a connection to
be
available, or -1 (the default) to wait indefinitely
</li>
<li>
... see org.apache.commons.dbcp.BasicDataSource setters for more.
</li>
</ul>
<p />
To configure the datasource, individual property sub-elements must be
used.
For a non-XA datasource,
<b>url</b>
,
<b>username</b>
and
<b>password</b>
are commonly used. For a XA datasource, the properties are done
according
to the JavaBean setters of the datasource, see the
documentation for
your
JDBC driver for more.
</documentation>
<require>org.nuxeo.runtime.jtajca.JtaActivator</require>
<service>
<provide interface="org.nuxeo.runtime.datasource.PooledDataSourceRegistry" />
</service>
<implementation class="org.nuxeo.runtime.datasource.DataSourceComponent" />
<extension-point name="datasources">
<object class="org.nuxeo.runtime.datasource.DataSourceDescriptor" />
<object class="org.nuxeo.runtime.datasource.DataSourceLinkDescriptor" />
</extension-point>
</component>